This invention relates to a method of controlling information stored at an address that is pointed out in a memory so that the information is correctly readable before that information is used to control various functions. This invention also relates to a device that can coact with a memory and ensure that digital information, written into and stored within the memory, is correctly readable.
The method and the device or control circuit according to the invention are more specifically intended to ensure that information is correct, where the information is readable from a control memory, or more specifically out of a location in the control memory pointed out by an address, and where the information is coordinated into a data packet.
In a more specific application in a telecommunication system, the invention is intended to ensure that information stored within a control memory is correctly readable before that information is used to control functions within a switching unit.
Within such a communication system and switching unit, required exchange of signals is performed with information-carrying digital signals that are structured and coordinated into data packets, with one address-related field, or field pointing towards an address, and one information-content-related field, or information-carrying field, or set of bits.
Communication systems that use data packets for required exchange of signals are previously known. One such system, to which a specifically preferred embodiment of the present invention is related, uses a number of digital bit positions coordinated into structured sets of bits. The sets of bits are structured and coordinated into data packets, for required exchange of signals.
Such structured data packets arc called "data cells" in known asynchronous-transfer-mode (ATM) systems. Nevertheless, in the following, the expression "data packet" will be used in a simplifying and more general way, keeping in mind that the invention, with great advantage, can be used even in an ATM system where the data packets are called "data cells".
Data packets (data cells) of the kind relevant here are characterized by certain bit positions that are coordinated into a set of bits representing an address-related field or a field pointing towards an address (called a "header"). This field comprises, among other things a virtual address, also called a channel number. Other bit positions are coordinated into a set of bits representing a user-related information-carrying field or an information-content-related field (called a "payload"), comprising the data information from the user.
Through this separation into structured fields, or sets of bits, some of the bit positions of the address-related field can be structured to indicate and point out a specific destination address while the information-carrying bit positions are structured Into sets of bits within the information-carrying field, and are used to transfer desired information to the chosen receiver at the destination address.
The specific destination address can indicate the use of a chosen channel number. Such channel numbers are virtual and are usually valuable over a single physical link. It has thereby been proven advantageous to change the channel number whenever a data packet is to be directed from one link to another.
Data packets having the same address-related bit positions or fields and the same or different information-carrying bit positions or fields will in the following be said to be data packets of the same category, and there may be a first category, a second category, and so forth.
Such changes of channel numbers (data packets are thereby allotted to different categories) are therefore often performed on both incoming ad outgoing sides of a switching unit within a telecommunication system that uses digital information.
It is further known to add data packets that arc used solely for internal use by the switching unit to optimize certain functions hardware-wise within the switching unit. Such data packets use more bit positions than the amount of bit positions or sets of bits used in a standardized data packet. These switching-unit-internal data packets can be structured as a label, a label field, or label-related bit positions or sets of bits that can be added to incoming data packets to direct such data packets to the correct outgoing link based on the digital value of the bit positions of tile added label.
The label field added to each respective data packet comprises a set of extra bit positions corresponding to the amount of bit positions in the address field, which are removed at the outgoing side of the switching unit. Thus, the label field only exists as a supplement to the standardized data packet as internal data packets within the selector switching unit.
It is further known that with telecommunication systems of this kind the use of a traffic arranging computer, belonging to the switching unit, is required to establish a connection through the switching unit. The traffic arranging computer or traffic computer is a very complicated unit that will not be described in detail in this application. Only the less complex part that is required to realize and understand the present invention will be described.
It is known that when a caller is making a call and wishes to establish contact, such as a voice contact, with a called subscriber, data packets are activated for transmission according to a standardized signalling protocol. The data packets can here be supposed to belong to a specific category in that the address-related bit positions or sets of bits call for a direct connection with the control computer as soon as they arrive at one of the free receiver circuits in the switching unit.
The address-related field thus comprises a specific channel number that calls for the direct engagement of the traffic computer, while the information-carrying field can hold information of a desired connection to a pointed out called subscriber.
The channel number is, in a previously known manner, read out of the address-related field whenever a data packet of this kind arrives at one of the free receiver circuits of the switching unit, and, when the channel number is interpreted as a calling channel number, the whole data packet is transmitted to the traffic computer for evaluation and processing.
At this point the information carrying field is evaluated and under guidance of this, and taking the momentary situation within the switching unit under consideration, the traffic computer selects an available connecting path through the switching unit via earlier known functions, and gives the call a new channel number which is notified to the caller. From this point the caller transmits its data packets with the new channel number. In this way, the data packets have been given a new category.
At every call and following setup of connections it is also earlier known to let the traffic computer write into a control memory what address-related fields and/or labels are to be given to every thereafter-incoming data packet with the given new channel and what switch-internal chosen channel number these are to be given. Of course this is done in case a change of channel numbers is to be performed.
The control memory will therefore, in the normal case, comprise bit positions coordinated into a set of bits structured into a specific label, and coordinated bit positions structured into a specific address-related field, the latter representing the switch-internal channel number. This is done for every channel number given by the computer unit that will be used by the caller.
The control memory also needs to be configured in a way so that every above-mentioned bit position or set of bits will be assigned an addressing or addressable position in the memory.
The normal case will thus be that a control memory of this kind will comprise a large number of bit positions and a large number of bit positions that are coordinated into sets of bits within various address positions, representing a large number of established connections.
Every selected address position or address within the control memory will determine what label and what switch-internal channel number that is to be given to a certain received data packet.
Whenever a data packet having a channel number given by the control computer arrives at one of the available receiver units of the switching unit, it is determined, from its given channel number, which switch-internal connection it belongs to. Based on the channel number of the arriving data packet, a correct address position within the control memory can be pointed out where the label and switch-internal channel number are stored.
The label and the address-related field is at this point added to the data packet at hand by changing its incoming channel number to the switch-internal channel number, whereafter the data packet, with its changed channel number, is transmitted further through the switching unit.
It is also known to change channel numbers in the same way if a change of channel numbers is required on the outgoing side of the switching unit.
The invention is intended to control whether the information read out of the control memory is correct.
In view of the known prior art as described above, it must be regarded as a technical problem to be able to realize what measures and means are to be coordinated to be able to create a method and a control circuit or device that is to provide the technical advantages attached to the invention at hand, which are the possibilities to be able to control that an information read from a memory is correct before the information is used to control various functions and where the control consists of letting, amongst other things, the address of the memory position be a part of a control sum.
It will further be considered as a technical problem to, with simple means, be able to create such conditions that a first control sum can be calculated and stored separately at the entry of the switch-internal-related information intended to be stored; that another control sum can be calculated at the reading of the information; and that these control sums will be controlled and verified to be identical before the thus read information is to be used.
It must also be considered as a technical problem to be able to realize the advantages that reside in entering not only address-related bit positions but also control-sum-related bit positions into the memory, where the latter not only originate from the former but also from the bit positions that represent the address positions in the memory where the address-related bit positions or set of bits are stored.
It is a further technical problem, based on known prior art as described above and for a telecommunication system based upon data packets of bit positions and sets of bits such as an ATM system, to be able to realize that to achieve the technical advantages that reside in the invention a control and an activation of a traffic computer is required so that the traffic computer can calculate a control sum, such as parity bits, a check sum or likewise, valid for the address-related information that is to be stored in the control memory and a set of bits corresponding to a selected address in the memory, and that the traffic computer has to be controlled and activated to write the bit positions corresponding to a label and/or the bit positions corresponding to an address field and further the bit positions corresponding to the thus calculated control sum.
It must also be considered as a technical problem to be able to realize the importance of being able to use a known receiver unit, belonging to a switching unit, to receive each and every one of the arriving data packets to be able, in every data packet and depending on the bit positions coordinated within the channel number given by the control computer and represented by the address-related field, to read the corresponding information, stored in the control memory and pointed out by the channel number, where the information is to be added to respective data packets, for the purpose of switch-internal collecting functions, as a switch-internal address-related field, or switch-internal usable field or bit positions, instead of the channel number that has been given by the control computer to the data packets transmitted from the caller.
It is also a technical problem to be able to realize the necessity of and simplicity in calculating the relevant control sum with the same chosen algorithm or likewise, and to store it as parity bits or a check sum.
It is also a technical problem to be able to realize the importance of calculating the parity bits or check sums independent of each other using different calculating circuits or look up tables and thereby realize the high probability that is offered of a correct reproduction of read information and that a verified agreement between the check sums or parity bits can be made so that it can be known that no bit error has occurred in the information that has been stored in and read out of the control memory and that therefore the data packet at hand, with label and/or switch-internal address-related fields, can pass on through the switching unit.
There is also a technical problem in being able to realize the importance of letting the switch-internal address-related field also comprise a label field adapted to specific functions.
There is also a technical problem in being able to realize the advantages of letting the control computer perform parity calculations of the channel numbers within the information-related fields of respective incoming data packets.